Resumen

row

Cantidad de aves en Colombia

1,954

Cantidad especies

238 (12.2%)

Column

Aves observadas segun el tiempo en minutos

Column

Aves observadas segun el tiempo en minutos

cantidad de especies por año

Gráficas(Especies por año y meses)

Column

Observaciones por fecha

Observaciones por mes

Observaciones por mes

Información

Datos Los datos son descargados de la plataforma Ebird sobre mis avistamientos de aves desde el 2018 en el Eje cafetero.

---
title: "Aves_eje_Cafetero"
author: "Sandra Rairán"
output: 
  flexdashboard::flex_dashboard:
    orientation: row
    social: menu
    source_code: embed
    vertical_layout: fill
---



```{r setup, include=FALSE}
library(flexdashboard)
library(dplyr)
library(tidyr)
library(RColorBrewer)
library(tidyverse)
library(lubridate)

#------------------ Parameters ------------------
# Set colors

# https://www.w3.org/TR/css-color-3/#svg-color
count_color <- "mediumvioletred"
colombia_color <- "seagreen"
color <- "slateblue"
Durationmin_color <- "teal"

#------------------ Data ------------------

data_bird<- read.csv("birds_colombia.csv")

aves_colombia <- 1954
#Cantidad de especies
cant_esp <- length(unique(data_bird$Scientific_Name))

# epecies por año


# distinct values
especies_count <-  group_by(data_bird, year)
especies_count <- summarise(especies_count, unique_especies = n_distinct(Scientific_Name))
especies_count<- especies_count %>% rename(Cantidad_especies = unique_especies) 

#mutate

data_bird <-data_bird %>%  mutate(observation_date = ymd(data_bird$Date))

bird <- data_bird %>% 
  select(Scientific_Name, observation_date, Count) %>% 
  glimpse()


# Observaciones por mes de espcies
df_observaciones <- data_bird %>% 
  mutate(observacion_mes = month(observation_date, label = TRUE),
         observacion_año = year(observation_date)) %>% 
  group_by(Scientific_Name, year, Mes) %>% 
  summarize(observation_count = sum(Count, na.rm = TRUE)) %>% 
  group_by(Scientific_Name, Mes) %>% 
  summarize(observation_count_mean = mean(observation_count) %>% round(1)) %>% 
  ungroup() %>% 
  #complete(Scientific_Name, Mes = meses) %>% 
  replace_na(list(observation_count_mean = 0)) %>% 
  arrange(Scientific_Name, Mes)
  glimpse(df_observaciones)

```

Resumen
=======================================================================


row {data-width=450}
-----------------------------------------------------------------------

### Cantidad de aves en Colombia {.value-box}

```{r}
valueBox(
  value = paste(format(aves_colombia, big.mark = ","), "", sep = " "),
  caption = "Cantidad de aves en Colombia",
  icon = "fas fa-dove",
  color = colombia_color
)
```



### Cantidad especies {.value-box}

```{r}


valueBox(
  value = paste(format(cant_esp, big.mark = ","), " (",
    round(100.2 * cant_esp / aves_colombia, 1),
    "%)",
    sep = ""
  ),
  caption = "Total de Especies Observadas en el Eje Cafetero",
  icon = "fas fa-crow",
  color = count_color
)

```


Column {data-width=650}
-----------------------------------------------------------------------

### Aves observadas segun el tiempo en minutos

```{r}
  plotly::plot_ly(data = data_bird) %>%
  plotly::add_trace(x = ~ data_bird$Duration_Min,
                    y = ~ data_bird$Count,
                    type = "bar", 
                name = "Active",
                marker = list(color = "goldenrod")) %>%
  plotly::layout(barmode = 'stack',
                 yaxis = list(title = "Cantidad de Aves",
                              type = "log"),
                 xaxis = list(title = "Duracion observacion en Minutos"),
                 hovermode = "compare",
                  margin =  list(
                   # l = 60,
                   # r = 40,
                   b = 10,
                   t = 10,
                   pad = 2
                 ))
```

Column {data-width=350}
-----------------------------------------------------------------------


### Aves observadas segun el tiempo en minutos

```{r}
plotly::plot_ly(data = data_bird) %>%
  plotly::add_trace(x = ~ data_bird$Time,
                    type = "histogram", 
                name = "Active",
                marker = list(color = color)) %>%
  plotly::layout(barmode = 'stack',
                 yaxis = list(title = "Hora de inicio pajareada",
                              type = "log"),
                 xaxis = list(title = "Hora de inicio (time)"),
                 hovermode = "compare",
                  margin =  list(
                   # l = 60,
                   # r = 40,
                   b = 10,
                   t = 10,
                   pad = 2
                 ))
     
```

 

### cantidad de especies por año

```{r}

library(reactable)
orange_pal <- function(x) rgb(colorRamp(c("#ffe4cc", "#ff9500"))(x), maxColorValue = 255)


reactable(especies_count, defaultSorted = list(Cantidad_especies = "desc"), columns = list(
  Cantidad_especies = colDef(style = function(value) {
    normalized <- (value - min(especies_count$Cantidad_especies)) / (max(especies_count$Cantidad_especies) - min(especies_count$Cantidad_especies))
    color <- orange_pal(normalized)
    list(background = color)
  })
))
```

Gráficas(Especies por año y meses)
=======================================================================
Column {data-width=400}
------------------------------------------------------------------------------
### Observaciones por fecha
```{r}
     
data_bird %>% 
  count(observation_date) %>% 
  ggplot(aes(x = observation_date, y=n, group = 1)) +
  geom_line( colour = "mediumvioletred", size=1, alpha=0.9, linetype=1) +
   geom_point(color="mediumvioletred", size=2) +
  ggtitle("Observaciones por fecha") +
    labs(x = "Fecha Observacion",
         y = "Observacoines")+
   theme_light()
                         
```

### Observaciones por mes
```{r}
# log10 para Para hacer que los datos con asimetría positiva sean más "normales"

  df_observaciones %>% 
  ggplot(aes(Mes, observation_count_mean)) +
  geom_jitter(color="mediumorchid", size=0.7, alpha=0.5) +
    geom_boxplot(fill = "palegreen", colour = "mediumseagreen") +
    labs(x = "Observaciones por mes",
         y = "Promedio de aves observadas (log10)")+
  theme_light()
```

### Observaciones por mes
```{r}
# log10 para Para hacer que los datos con asimetría positiva sean más "normales"
  
  df_observaciones %>% 
  ggplot(aes(Mes, observation_count_mean)) +
     geom_point(color="purple", alpha=0.8) +
    labs(x = "Observaciones por mes",
         y = "Promedio de aves observadas (log10)")
```

Información
=======================================================================


**Datos** 
Los datos son descargados de la plataforma Ebird sobre mis avistamientos de aves desde el 2018 en el Eje cafetero.